1. The Field of the Invention
The present invention relates to user interfaces in computing systems. More particularly, embodiments of the invention relate to semantic syntax treatment.
2. The Relevant Technology
Software allows users to take advantage of the increasing power of computers for any number of applications. User interfaces often allow users to interact software running on a computer by allowing a user to view a representation of input as it is entered for use by the software, as well as permitting the user to view a representation of the output on the computer. This is often true in both the use of a computer program as well as in the writing and development of the program and in other uses of a computer.
In order to input commands and/or data for processing, text (such as ASCII characters) is usually entered into the computer. Matching terms within code are often desirable in order for the program to run properly or to yield the desired results. For example, if grouping parameters such as parentheses used to indicate an order of operation are not properly matched, a result may be returned or the result may not be what the programmer intended. Similarly, if variable names or assignments are not properly used, undesired values or errors may result.
In order to reduce such errors, some efforts have been made to indicate matching or errors with different colored text. For example, one approach indicates which parentheses are considered as matching by displaying matching parentheses in the same color. Other approaches change the color of mismatching variables after the programmer attempts to run the program. Such programs do not take into account the use of local variables and also do not allow the programmer to see errors until after the programmer is finished with the code.
The subject matter claimed herein is not limited to implementations that solve any disadvantages or that operate only in environments such as those described above. Rather, this background is only provided to illustrate one exemplary technology area where some implementations described herein may be practiced.